import unittest


class CleanTest(unittest.TestCase):
    def setUp(self):
        print('setUp')

    def tearDown(self):
        print('tearDown')

    @classmethod
    def tearDownClass(cls):
        print('teardown Class')

    def delf(self, a):
        print(a)

    def delf2(self, a):
        print(a)

    def test01(self):
        '''场景是这样的：正常的测试用例是这样的，你创建资源后，需要在用例中去进行删除资源，teardown方法中的操作是针对所有的测试用例.
        针对某些测试用例的资源清理, 会有个性化的要求, 因此用addCleanup后，直接在用例中写入函数，在tearDown用例后，会再次调用
        addCleanup来删除资源，以达到不同的测试用例资源清理个性化的需求'''
        print('test01')
        cleanups = ('aaaaaaa',)
        self.addCleanup(self.delf, cleanups[0])
        self.doCleanups()

    # def test02(self):
    #     print('test02')


if __name__ == '__main__':
    test = unittest.TestSuite()
    test.addTest(CleanTest('test01'))

    runner = unittest.TextTestRunner()
    runner.run(test)
